1. Field of the Invention
The present invention relates to a storage device for use in starting up a system comprising a computer and its start-up method.
2. Description of the Related Art
Nowadays, a hard disk is mostly used as a storage device for storing an operating system or application program (hereinafter referred to as start-up data) for activating a system comprising a computer or an electronic computer. Particularly in the personal computers in recent years, an enormous amount of data is often processed, whereby there is a great demand for using high capacity hard disks.
The start-up data stored in the hard disk is read from the hard disk when the system is started, and written into a memory such as a RAM (Random Access Memory) accessible by a CPU that is the control unit of the system. Thereby, the system can perform a predetermined process.
FIG. 1 shows one example of the configuration around a storage unit in a typical system comprising memory control unit 1004, storage unit 1007, I/O control unit 1008, CPU 1009, RAM 1010 and BIOS_ROM 1011. I/O control unit 1008, CPU 1009, RAM 1010 and BIOS_ROM 1011 are connected to bus 1012.
Storage unit 1007 is a mass storage device such as a hard disk that stores the start-up data for activating the system. Memory control unit 1004 controls the reading the start-up data stored in the storage unit 1007. I/O control unit 1008 controls each I/O with an I/O instruction to be executed by CPU 1009. RAM 1010 is a storage area for use when CPU 1009 runs a program that includes an operating system. BIOS_ROM 1011 is non-volatile memory that stores firmware for performing initialization and autonomous diagnosis of the hardware at the time to start the system. CPU 1009 is a processor for controlling them.
When the power is turned on in the system having the above configuration, the start-up data stored in storage unit 1007 is read by memory control unit 1004. And the system is started using the read start-up data.
Also, one of the characteristics of a hard disk is that there is a certain probability that failure will occur due to the mechanical structure. Therefore, in a computer system such as a server requiring reliability, it is common that a redundant configuration such as dual hard disk is employed.
In view of this background, recently, a system constituting a storage device using a non-volatile semiconductor storage element (hereinafter referred to as a non-volatile memory) represented by a flash memory was disclosed in JP-2003-345602A. Thereby, reliability can be improved by removing the mechanical unit s from the system.
However, non-volatile memory has the drawbacks in which access speed is typically slower than that of a hard disk and the write number is restricted.
In particular, the slower access speed has a direct influence on the system performance not only in starting the operation of loading or saving the program, but also when the storage device is used as virtual storage by the operating system. Also, there is the problem that slower access speed influences the start-up time of the device, such as system boot up, which needs to be as short as possible.
Thus, there is disclosed in JP-2004-030184A a technique for increasing the speed of the start up operation by storing data, that is stored in the hard disk, in a memory that is connected to a high speed bus, and by reading data, that is stored in memory, when starting the system.
However, in the technique as described in JP-2004-030184A, there is a problem that, when the data stored in the hard disk is transferred to memory that is connected to the high speed bus, the overall system has to be started up.